C/C++ 您所在的位置:网站首页 char 中文字符 C/C++

C/C++

2023-07-21 10:36| 来源: 网络整理| 查看: 265

C/C++ -- 判断字符串中存在中文 电脑系统中的英文字符串和中文字符最根本的区别就在于: 1、英文的 ASCII 码,其最高位为 0,占一个字节 注:英文的ASCII码范围是在0到127,二进制为(0000 0000 ~ 0111 1111) 2、中文的 ASCII 码,其最高位为 1。占两个字节, 注:两个字节的最高位都是1 因此可以看出,可以拿字符串中的每个字节和ASC||的最高位也就是0x80(1000 0000)比较,如果一开始并且有两个连续的字符比0x80大,那么这两个字符合在一起为一个中文   再例如:若需要处理的字符是汉字的话,那么其 ASCII 码最高位为 1。位于汉字符号区的区位码,第一个汉字是从“啊”字开始的,其区位码是:1601,但是它的汉字内码是这样计算的:   区码 16:16+160 = 176,转换成十六进制:B0,其对应的二进制为:10110000   位码 01:01+160 = 161,转换成十六进制:A1,其对应的二进制为:10100001      gb2312码表:https://blog.csdn.net/oshan2012/article/details/79070705 方法一: #include #include int main() { char sztext[] = " 是ciw."; char c = 0; char szchinese[3] = {0}; int i = 0, nlen = strlen(sztext); for(; i < nlen; i++) {   //不是全角字符   if( sztext[i] >= 0 && sztext[i]


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有